<!DOCTYPE html>
<html lang="zh">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>父子传参</title>
    <script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script>
    <script src="https://cdn.staticfile.org/react-dom/16.4.0/umd/react-dom.development.js"></script>
    <script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.min.js"></script>
</head>

<body>
    <div id="root"></div>
    <div id="root2"></div>
    <div id="root3"></div>
    <script type="text/babel">
        // 继承父类拥有父类方法
        class HelloStar extends React.Component {
            // 带有 this. 前缀，说明 props 是成员属性，成员属性可以跨方法使用   
            // constructor(props) {
            //     this.props = props
            // }
            render() {
                // 构造方法
                return <h2>你好，{this.props.star}</h2>;
            }
        }

        ReactDOM.render(new HelloStar({ star: "胡歌" }).render(), root);

        // 语法糖
        ReactDOM.render(<HelloStar star="后端码匠" />, root2);

        // 复用
        let more = (
            <div>
                <HelloStar star="微信公众号 后端码匠" />
                <HelloStar star="微信公众号 驴" />
                <HelloStar star="微信公众号 你好" />
            </div>

        )

        ReactDOM.render(more, root3)
    </script>
</body>

</html>

<!--
    // new HelloStar({star: "胡歌"}).render()
    // 初始化操作，触发哪个方法好？？？ 构造方法 constructor
    constructor(props) {
                this.props = props
    }

    面向对象
-->